# 导入fastAPI
from fastapi import FastAPI
# 用来设置跨域传参
from fastapi.middleware.cors import CORSMiddleware
# 服务
import uvicorn
# 导入API模块
from app.api import loginAPI, userAdminAPI, companyAdminAPI, hazardAdminAPI

app = FastAPI(title='安全生产隐患排查系统')

# 在app中注册导入的路由模块
app.include_router(loginAPI, prefix='/loginAPI')                     # 注册登录路由模块
app.include_router(userAdminAPI, prefix='/userAdminAPI')             # 注册用户管理路由模块
app.include_router(companyAdminAPI, prefix='/companyAdminAPI')       # 注册企业信息管理路由模块
app.include_router(hazardAdminAPI, prefix='/hazardAdminAPI')         # 注册隐患描述管理路由模块
    
# 设置允许访问的域名
origins = ["*"]  #也可以设置为"*"，即为所有。

# 设置跨域传参
app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,  # 设置允许的origins来源
    allow_credentials=True,
    allow_methods=["*"],  # 设置允许跨域的http方法，比如 get、post、put等。
    allow_headers=["*"]   # 允许跨域的headers，可以用来鉴别来源等作用。
)

if __name__ == "__main__":
    uvicorn.run(app='main:app', host="0.0.0.0", port=8080, reload=True, log_level="debug")